<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  <title>Returns a sub-sequence of a given range</title>
<link media="all" rel="stylesheet" type="text/css" href="styles/03e73060321a0a848018724a6c83de7f-theme-base.css" />
<link media="all" rel="stylesheet" type="text/css" href="styles/03e73060321a0a848018724a6c83de7f-theme-medium.css" />

 </head>
 <body class="docs"><div class="navbar navbar-fixed-top">
  <div class="navbar-inner clearfix">
    <ul class="nav" style="width: 100%">
      <li style="float: left;"><a href="ds-sequence.shift.html">« Ds\Sequence::shift</a></li>
      <li style="float: right;"><a href="ds-sequence.sort.html">Ds\Sequence::sort »</a></li>
    </ul>
  </div>
</div>
<div id="breadcrumbs" class="clearfix">
  <ul class="breadcrumbs-container">
    <li><a href="index.html">PHP Manual</a></li>
    <li><a href="class.ds-sequence.html">Sequence</a></li>
    <li>Returns a sub-sequence of a given range</li>
  </ul>
</div>
<div id="layout">
  <div id="layout-content"><div id="ds-sequence.slice" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">Ds\Sequence::slice</h1>
  <p class="verinfo">(PECL ds &gt;= 1.0.0)</p><p class="refpurpose"><span class="refname">Ds\Sequence::slice</span> &mdash; <span class="dc-title">
   Returns a sub-sequence of a given range
  </span></p>

 </div>

 <div class="refsect1 description" id="refsect1-ds-sequence.slice-description">
  <h3 class="title">说明</h3>
  <div class="methodsynopsis dc-description">
   <span class="modifier">abstract</span> <span class="modifier">public</span> <span class="methodname"><strong>Ds\Sequence::slice</strong></span>(<span class="methodparam"><span class="type">int</span> <code class="parameter">$index</code></span>, <span class="methodparam"><span class="type">int</span> <code class="parameter">$length</code><span class="initializer"> = ?</span></span>): <span class="type"><a href="class.ds-sequence.html" class="type Ds\Sequence">Ds\Sequence</a></span></div>

  <p class="para rdfs-comment">
    Creates a sub-sequence of a given range.
  </p>

 </div>


 <div class="refsect1 parameters" id="refsect1-ds-sequence.slice-parameters">
  <h3 class="title">参数</h3>
  <dl>
   
    <dt>
<code class="parameter">index</code></dt>

    <dd>

        <p class="para">
            The index at which the sub-sequence starts.
        </p>
        <p class="para">
            If positive, the sequence will start at that index in the sequence.
            If negative, the sequence will start that far from the end.
        </p>
    </dd>

    
    
    <dt>
<code class="parameter">length</code></dt>

    <dd>

     <p class="para">
        If a length is given and is positive, the resulting
        sequence will have up to that many values in it.

        If the length results in an overflow, only
        values up to the end of the sequence will be included.

        If a length is given and is negative, the sequence
        will stop that many values from the end.

        If a length is not provided, the resulting sequence
        will contain all values between the index and the
        end of the sequence.
     </p>
    </dd>

   
  </dl>

 </div>


 <div class="refsect1 returnvalues" id="refsect1-ds-sequence.slice-returnvalues">
  <h3 class="title">返回值</h3>
  <p class="para">
    A sub-sequence of the given range.
  </p>
 </div>


 <div class="refsect1 examples" id="refsect1-ds-sequence.slice-examples">
  <h3 class="title">范例</h3>
  <div class="example" id="example-3985">
   <p><strong>示例 #1 <span class="function"><strong>Ds\Sequence::slice()</strong></span> example</strong></p>
   <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000">
<span style="color: #0000BB">&lt;?php<br />$sequence&nbsp;</span><span style="color: #007700">=&nbsp;new&nbsp;\</span><span style="color: #0000BB">Ds</span><span style="color: #007700">\</span><span style="color: #0000BB">Vector</span><span style="color: #007700">([</span><span style="color: #DD0000">"a"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"b"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"c"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"d"</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">"e"</span><span style="color: #007700">]);<br /><br /></span><span style="color: #FF8000">//&nbsp;Slice&nbsp;from&nbsp;2&nbsp;onwards<br /></span><span style="color: #0000BB">print_r</span><span style="color: #007700">(</span><span style="color: #0000BB">$sequence</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">slice</span><span style="color: #007700">(</span><span style="color: #0000BB">2</span><span style="color: #007700">));<br /><br /></span><span style="color: #FF8000">//&nbsp;Slice&nbsp;from&nbsp;1,&nbsp;for&nbsp;a&nbsp;length&nbsp;of&nbsp;3<br /></span><span style="color: #0000BB">print_r</span><span style="color: #007700">(</span><span style="color: #0000BB">$sequence</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">slice</span><span style="color: #007700">(</span><span style="color: #0000BB">1</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">3</span><span style="color: #007700">));<br /><br /></span><span style="color: #FF8000">//&nbsp;Slice&nbsp;from&nbsp;1&nbsp;onwards<br /></span><span style="color: #0000BB">print_r</span><span style="color: #007700">(</span><span style="color: #0000BB">$sequence</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">slice</span><span style="color: #007700">(</span><span style="color: #0000BB">1</span><span style="color: #007700">));<br /><br /></span><span style="color: #FF8000">//&nbsp;Slice&nbsp;from&nbsp;2&nbsp;from&nbsp;the&nbsp;end&nbsp;onwards<br /></span><span style="color: #0000BB">print_r</span><span style="color: #007700">(</span><span style="color: #0000BB">$sequence</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">slice</span><span style="color: #007700">(-</span><span style="color: #0000BB">2</span><span style="color: #007700">));<br /><br /></span><span style="color: #FF8000">//&nbsp;Slice&nbsp;from&nbsp;1&nbsp;to&nbsp;1&nbsp;from&nbsp;the&nbsp;end<br /></span><span style="color: #0000BB">print_r</span><span style="color: #007700">(</span><span style="color: #0000BB">$sequence</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">slice</span><span style="color: #007700">(</span><span style="color: #0000BB">1</span><span style="color: #007700">,&nbsp;-</span><span style="color: #0000BB">1</span><span style="color: #007700">));<br /></span><span style="color: #0000BB">?&gt;</span>
</span>
</code></div>
   </div>

   <div class="example-contents"><p>以上例程的输出类似于：</p></div>
   <div class="example-contents screen">
<div class="cdata"><pre>
Ds\Vector Object
(
    [0] =&gt; c
    [1] =&gt; d
    [2] =&gt; e
)
Ds\Vector Object
(
    [0] =&gt; b
    [1] =&gt; c
    [2] =&gt; d
)
Ds\Vector Object
(
    [0] =&gt; b
    [1] =&gt; c
    [2] =&gt; d
    [3] =&gt; e
)
Ds\Vector Object
(
    [0] =&gt; d
    [1] =&gt; e
)
Ds\Vector Object
(
    [0] =&gt; b
    [1] =&gt; c
    [2] =&gt; d
)

</pre></div>
   </div>
  </div>
 </div>



</div></div></div></body></html>